In an integrated circuit (IC) chip, it is a common current practice to include RAMs (random access memories) on the chip, and large sized RAMs would be implemented with redundant columns and rows. Defects are common in IC chips, and a defect may cause a RAM in the chip to not function properly. If redundancies are not implemented on large sized RAMs, the yield will be very low for the chip parts. The redundant rows and columns for RAMs permit the yield for the chip parts to dramatically increase. For example, redundancies for a chip can increase the yield by as much as approximately 50% or more. Increased yield leads to much lower manufacturing cost for chips. Therefore, it is a common practice to implement redundancies in IC chips.
Defective locations also occur in a TCAM (ternary content addressable memory) and also in CAMs. As known to those skilled in the art, a CAM is a type of memory that provides a mechanism for fast searching of the memory contents. A CAM is externally supplied with data, and searches are made within the contents of the CAM for a match with the externally-supplied input data. The address(es) where a match occurs are output by a comparison logic in the CAM. As also known to those skilled in the art, a TCAM is a form of the CAM that supports the storing of zero (0), one (1), or don't care (X) bits. A TCAM cell (in the TCAM) includes a main RAM cell to store a logic “1” state or a logic “0” state, and a mask RAM cell to store mask data. A comparison result of the externally supplied input data with the data stored in the main RAM cell is masked with the mask data such that the comparison result of the masked data bits does not affect a corresponding match. Therefore, the TCAM offers more flexibility to determine which data bits in a word will be masked and is not used during a compare operation.
The TCAM is presently the dominant type of CAM since the longest-prefix routing is a common requirement in networking products such as, for example, routers. For example, TCAMs are used for address searching by routers in a network. As another example, TCAMs are used for access control lists (ACLs) which are typically used for security applications. As known to those skilled in the art, TCAMs and CAMs may be used in different applications.
Defects in a TCAM can decrease the yield of parts and can increase the part cost. Current methods do not address on solving the negative impact on yield due to defects in TCAMs. Additionally, TCAMs and RAMs differ in attributes and characteristics, and therefore, the particular method of implementing redundancies in a RAM may not be a suitable for a TCAM. It would be desirable to achieve higher yield of parts that may have TCAM defects with the addition of redundancy. It would also be desirable to add redundancy to a TCAM at a much lower cost.
Therefore, the current technology is limited in its capabilities and suffers from at least the above constraints and deficiencies.